<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" >

	<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
	<link href="https://fonts.googleapis.com/css?family=Roboto+Mono" rel="stylesheet">
	<link href="https://fonts.googleapis.com/css?family=Cousine|Inconsolata" rel="stylesheet">
	<link rel="shortcut icon" type="image/png" href="/favicon.png">

	
	<link rel="stylesheet" href="/css/style.css">
	<link rel="stylesheet" href="/css/css/fontawesome-all.min.css">
	<script src="/js/main.js"></script>
	

	<!-- Begin Jekyll SEO tag v2.1.0 -->
<title>Forum/Market Bandwidth - Steem Developer</title>
<meta property="og:title" content="Forum/Market Bandwidth" />
<meta name="description" content="How to interpret raw bandwidth data." />
<meta property="og:description" content="How to interpret raw bandwidth data." />
<link rel="canonical" href="https://developer.steem.io/tutorials-recipes/forum-market-bandwidth" />
<meta property="og:url" content="https://developer.steem.io/tutorials-recipes/forum-market-bandwidth" />
<meta property="og:site_name" content="Steem Developer" />
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2018-07-20T12:56:08-05:00" />
<script type="application/ld+json">
{"@context": "http://schema.org",
"@type": "BlogPosting",
"headline": "Forum/Market Bandwidth",
"datePublished": "2018-07-20T12:56:08-05:00",
"description": "How to interpret raw bandwidth data.",
"url": "https://developer.steem.io/tutorials-recipes/forum-market-bandwidth"}</script>
<!-- End Jekyll SEO tag -->


	
</head>
<body>
<header>
	<h1>
		<button type="button" class="open-nav" id="open-nav"></button>
		<a href="/"  class="logo-link"><img src="/images/logotype_white.svg" height="40" alt="Steem Developer logo"></a>
	</h1>

	
	<form action="/search/" method="get">
		<input type="text" name="q" id="search-input" placeholder="Search">
		<input type="submit" value="Search" style="display: none;">
	</form>
	

	<div id="sidebar" class="sidebar">
	
	
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/">
		<h6 class="ctrl-nav-section title">Introduction</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/#introduction-welcome">Welcome to Steem</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/quickstart/">
		<h6 class="ctrl-nav-section title">Quickstart</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/quickstart/#quickstart-choose-library">Choose Library</a></li>
						
					
						
						<li><a href="/quickstart/#quickstart-steemd-nodes">steemd Nodes</a></li>
						
					
						
						<li><a href="/quickstart/#quickstart-testnet">Steem Testnet</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/tutorials/">
		<h6 class="ctrl-nav-section title">Tutorials</h6>
		<ul class="cont-nav-section content">
			
				
					
						<li><a href="/tutorials/#tutorials-javascript">Javascript</a></li>
					
				
					
						<li><a href="/tutorials/#tutorials-python">Python</a></li>
					
				
					
						<li><a href="/tutorials/#tutorials-ruby">Ruby</a></li>
					
				
					
						<li><a href="/tutorials/#tutorials-recipes">Recipes</a></li>
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/services/">
		<h6 class="ctrl-nav-section title">Services</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/services/#services-steemit">Steemit.com</a></li>
						
					
						
						<li><a href="/services/#services-steemconnect">SteemConnect</a></li>
						
					
						
						<li><a href="/services/#services-jussi">jussi</a></li>
						
					
						
						<li><a href="/services/#services-imagehoster">ImageHoster</a></li>
						
					
						
						<li><a href="/services/#services-sbds">SBDS</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/apidefinitions/">
		<h6 class="ctrl-nav-section title">Appbase API</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/apidefinitions/#apidefinitions-condenser-api">Condenser Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-account-by-key-api">Account By Key Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-broadcast-ops-comment">Broadcast Ops Comment</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-account-history-api">Account History Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-database-api">Database Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-follow-api">Follow Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-jsonrpc">Jsonrpc</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-market-history-api">Market History Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-network-broadcast-api">Network Broadcast Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-tags-api">Tags Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-witness-api">Witness Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-block-api">Block Api</a></li>
						
					
						
						<li><a href="/apidefinitions/#apidefinitions-broadcast-ops">Broadcast Ops</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/community/">
		<h6 class="ctrl-nav-section title">Community</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/community/#community-overview">Overview</a></li>
						
					
						
						<li><a href="/community/#community-resources">Resources</a></li>
						
					
						
						<li><a href="/community/#community-developeradvocate">Sharing & Help</a></li>
						
					
				
			
		</ul>
	</section>
	
		
    <section class="pnl-main-nav-section main-nav-section" url="/glossary/">
		<h6 class="ctrl-nav-section title">Glossary</h6>
		<ul class="cont-nav-section content">
			
				
					
					
						
						<li><a href="/glossary/#glossary-chain-basics">Chain Basics</a></li>
						
					
						
					
						
						<li><a href="/glossary/#glossary-governance">Governance</a></li>
						
					
						
						<li><a href="/glossary/#glossary-transactions">Transactions</a></li>
						
					
						
						<li><a href="/glossary/#glossary-api">API</a></li>
						
					
						
						<li><a href="/glossary/#glossary-market">Market</a></li>
						
					
				
			
		</ul>
	</section>
	
</div>


	<!--<p class="copyright">-->
	<!--<a href="https://steemit.com.com/">-->
	<!--steemit-->
	<!--</a>-->
	<!--</p>-->
	<link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet">
</header>
<div class="main" id="top">
	<div class="hero">
		<h1 class="hero__h1">Steem Developer Portal </h1>
		
		<img class="hero__img" src="/images/hero.png">
		
	</div>
	<section id="tutorials-recipes-forum-market-bandwidth" class="row tutorials-recipes-forum-market-bandwidth">
	<h3>
		<a id="tutorials-recipes-forum-market-bandwidth">
			Forum/Market Bandwidth
			
		</a>
	</h3>
	
		<p class="description">How to interpret raw bandwidth data.</p>
	

	<h3 id="intro">Intro</h3>

<p>We’re going over the various API calls needed to determine the remaining bandwidth available to a particular account.  As mentioned in the <a href="https://steem.io/steem-whitepaper.pdf">STEEM Whitepaper</a>:</p>

<blockquote>
  <p>Bandwidth used by an individual user should be measured over a suitably long period of time to allow that
user to time-shift their usage. Users tend to login, do many things at once, then logout. This means that
their bandwidth over a short period of time may appear much higher than if viewed over a longer period of
time. If the time window is stretched too far, then the reserve ratio will not adjust fast enough to respond
to short-term surges; conversely, if the window is too short then clustering usage will have too big of an
impact on normal users.</p>
</blockquote>

<p>Bandwidth is specific to each account and depends on account activity.</p>

<h3 id="sections">Sections</h3>

<ol>
  <li><a href="#getting-account-bandwidth">Getting Account Bandwidth</a></li>
  <li><a href="#dynamic-global-properties">Dynamic Global Properties</a></li>
  <li><a href="#account-steem-power">Account STEEM Power</a></li>
  <li><a href="#calculate">Calculate</a></li>
</ol>

<h3 id="getting-account-bandwidth">Getting Account Bandwidth</h3>

<div class="language-bash highlighter-rouge"><pre class="highlight"><code>curl -s --data <span class="s1">'{
   "jsonrpc":"2.0",
   "method":"condenser_api.get_account_bandwidth",
   "params":[
      "cheetah",
      "forum"
   ],
   "id":1
}'</span> https://api.steemit.com
</code></pre>
</div>

<div class="language-json highlighter-rouge"><pre class="highlight"><code><span class="p">{</span><span class="w">
   </span><span class="nt">"jsonrpc"</span><span class="p">:</span><span class="s2">"2.0"</span><span class="p">,</span><span class="w">
   </span><span class="nt">"result"</span><span class="p">:{</span><span class="w">
      </span><span class="nt">"id"</span><span class="p">:</span><span class="mi">20846</span><span class="p">,</span><span class="w">
      </span><span class="nt">"account"</span><span class="p">:</span><span class="s2">"cheetah"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"type"</span><span class="p">:</span><span class="s2">"forum"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"average_bandwidth"</span><span class="p">:</span><span class="s2">"7525646416619"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"lifetime_bandwidth"</span><span class="p">:</span><span class="s2">"386010589000000"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"last_bandwidth_update"</span><span class="p">:</span><span class="s2">"2018-07-18T16:37:54"</span><span class="w">
   </span><span class="p">},</span><span class="w">
   </span><span class="nt">"id"</span><span class="p">:</span><span class="mi">1</span><span class="w">
</span><span class="p">}</span><span class="w">
</span></code></pre>
</div>

<p>In this example, we got forum (blogging) average bandwidth of 7,525,646,416,619 with a lifetime bandwidth of 386,010,589,000,000.</p>

<p>Note, <code class="highlighter-rouge">average_bandwidth</code> is expressed as an integer with six decimal places represented.  Divide by 1,000,000 in order to get the actual bytes of bandwidth, in this case: 7,525,646 bytes.</p>

<h3 id="dynamic-global-properties">Dynamic Global Properties</h3>

<p>To do the calculation, we need <code class="highlighter-rouge">max_virtual_bandwidth</code> and <code class="highlighter-rouge">total_vesting_shares</code> from the global properties, e.g.:</p>

<div class="language-bash highlighter-rouge"><pre class="highlight"><code>curl -s --data <span class="s1">'{"jsonrpc":"2.0", "method":"condenser_api.get_dynamic_global_properties", "params":[], "id":1}'</span> https://api.steemit.com
</code></pre>
</div>

<div class="language-json highlighter-rouge"><pre class="highlight"><code><span class="p">{</span><span class="w">
   </span><span class="nt">"id"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
   </span><span class="nt">"jsonrpc"</span><span class="p">:</span><span class="s2">"2.0"</span><span class="p">,</span><span class="w">
   </span><span class="nt">"result"</span><span class="p">:{</span><span class="w">
      </span><span class="nt">"head_block_number"</span><span class="p">:</span><span class="mi">24264289</span><span class="p">,</span><span class="w">
      </span><span class="nt">"head_block_id"</span><span class="p">:</span><span class="s2">"01723e6156ad44ac7bf3028a53a7ac642084cb39"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"time"</span><span class="p">:</span><span class="s2">"2018-07-17T20:25:27"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"current_witness"</span><span class="p">:</span><span class="s2">"followbtcnews"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"total_pow"</span><span class="p">:</span><span class="mi">514415</span><span class="p">,</span><span class="w">
      </span><span class="nt">"num_pow_witnesses"</span><span class="p">:</span><span class="mi">172</span><span class="p">,</span><span class="w">
      </span><span class="nt">"virtual_supply"</span><span class="p">:</span><span class="s2">"283443693.176 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"current_supply"</span><span class="p">:</span><span class="s2">"271786073.683 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"confidential_supply"</span><span class="p">:</span><span class="s2">"0.000 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"current_sbd_supply"</span><span class="p">:</span><span class="s2">"15504633.926 SBD"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"confidential_sbd_supply"</span><span class="p">:</span><span class="s2">"0.000 SBD"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"total_vesting_fund_steem"</span><span class="p">:</span><span class="s2">"193007548.472 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"total_vesting_shares"</span><span class="p">:</span><span class="s2">"391468555319.000697 VESTS"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"total_reward_fund_steem"</span><span class="p">:</span><span class="s2">"0.000 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"total_reward_shares2"</span><span class="p">:</span><span class="s2">"0"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"pending_rewarded_vesting_shares"</span><span class="p">:</span><span class="s2">"382967391.274340 VESTS"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"pending_rewarded_vesting_steem"</span><span class="p">:</span><span class="s2">"187173.234 STEEM"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"sbd_interest_rate"</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="w">
      </span><span class="nt">"sbd_print_rate"</span><span class="p">:</span><span class="mi">2966</span><span class="p">,</span><span class="w">
      </span><span class="nt">"maximum_block_size"</span><span class="p">:</span><span class="mi">65536</span><span class="p">,</span><span class="w">
      </span><span class="nt">"current_aslot"</span><span class="p">:</span><span class="mi">24341309</span><span class="p">,</span><span class="w">
      </span><span class="nt">"recent_slots_filled"</span><span class="p">:</span><span class="s2">"340282366920938463463374607431768211455"</span><span class="p">,</span><span class="w">
      </span><span class="nt">"participation_count"</span><span class="p">:</span><span class="mi">128</span><span class="p">,</span><span class="w">
      </span><span class="nt">"last_irreversible_block_num"</span><span class="p">:</span><span class="mi">24264271</span><span class="p">,</span><span class="w">
      </span><span class="nt">"vote_power_reserve_rate"</span><span class="p">:</span><span class="mi">10</span><span class="p">,</span><span class="w">
      </span><span class="nt">"average_block_size"</span><span class="p">:</span><span class="mi">13436</span><span class="p">,</span><span class="w">
      </span><span class="nt">"current_reserve_ratio"</span><span class="p">:</span><span class="mi">200000000</span><span class="p">,</span><span class="w">
      </span><span class="nt">"max_virtual_bandwidth"</span><span class="p">:</span><span class="s2">"264241152000000000000"</span><span class="w">
   </span><span class="p">}</span><span class="w">
</span><span class="p">}</span><span class="w">
</span></code></pre>
</div>

<h3 id="account-steem-power">Account STEEM Power</h3>

<p>We also need to know how much the account has in STEEM Power from <code class="highlighter-rouge">vesting_shares</code> and <code class="highlighter-rouge">received_vesting_shares</code>:</p>

<div class="language-bash highlighter-rouge"><pre class="highlight"><code>curl -s --data <span class="s1">'{"jsonrpc":"2.0", "method":"condenser_api.get_accounts", "params":[["cheetah"]], "id":1}'</span> https://api.steemit.com
</code></pre>
</div>

<div class="language-json highlighter-rouge"><pre class="highlight"><code><span class="p">{</span><span class="w">
   </span><span class="nt">"jsonrpc"</span><span class="p">:</span><span class="s2">"2.0"</span><span class="p">,</span><span class="w">
   </span><span class="nt">"result"</span><span class="p">:[</span><span class="w">
      </span><span class="p">{</span><span class="w">
         </span><span class="nt">"id"</span><span class="p">:</span><span class="mi">25796</span><span class="p">,</span><span class="w">
         </span><span class="nt">"name"</span><span class="p">:</span><span class="s2">"cheetah"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"owner"</span><span class="p">:{</span><span class="w">
            </span><span class="nt">"weight_threshold"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
            </span><span class="nt">"account_auths"</span><span class="p">:[],</span><span class="w">
            </span><span class="nt">"key_auths"</span><span class="p">:[[</span><span class="s2">"STM7yFmwPSKUP7FCV7Ut9Aev5cwfDzJZixcreS1U3ha36XG47ZpqT"</span><span class="p">,</span><span class="w"> </span><span class="mi">1</span><span class="p">]]</span><span class="w">
         </span><span class="p">},</span><span class="w">
         </span><span class="nt">"active"</span><span class="p">:{</span><span class="w">
            </span><span class="nt">"weight_threshold"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
            </span><span class="nt">"account_auths"</span><span class="p">:[],</span><span class="w">
            </span><span class="nt">"key_auths"</span><span class="p">:[[</span><span class="s2">"STM7yFmwPSKUP7FCV7Ut9Aev5cwfDzJZixcreS1U3ha36XG47ZpqT"</span><span class="p">,</span><span class="w"> </span><span class="mi">1</span><span class="p">]]</span><span class="w">
         </span><span class="p">},</span><span class="w">
         </span><span class="nt">"posting"</span><span class="p">:{</span><span class="w">
            </span><span class="nt">"weight_threshold"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
            </span><span class="nt">"account_auths"</span><span class="p">:[[</span><span class="s2">"anyx"</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">]],</span><span class="w">
            </span><span class="nt">"key_auths"</span><span class="p">:[[</span><span class="s2">"STM5bicRFWhpxnwBymo2HHJv6mFLiaP6AwVVsFEnnVjVcqbvqzvFt"</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">],</span><span class="w"> </span><span class="p">[</span><span class="s2">"STM7yFmwPSKUP7FCV7Ut9Aev5cwfDzJZixcreS1U3ha36XG47ZpqT"</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">],</span><span class="w"> </span><span class="p">[</span><span class="s2">"STM8Jn23vNmBzVuDAgQeZzzR17LmruENmmZmv1ra53tbsBgYbJFwk"</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">]]</span><span class="w">
         </span><span class="p">},</span><span class="w">
         </span><span class="nt">"memo_key"</span><span class="p">:</span><span class="s2">"STM7yFmwPSKUP7FCV7Ut9Aev5cwfDzJZixcreS1U3ha36XG47ZpqT"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"json_metadata"</span><span class="p">:</span><span class="s2">"{\"profile\":{\"profile_image\":\"https:\/\/c1.staticflickr.com\/6\/5739\/22389343016_25d10c52a3_b.jpg\",\"about\":\"I am a robot that automatically finds similar content. Check the website linked to on my blog to learn more about me!\",\"website\":\"http:\/\/steemit.com\/steemit\/@cheetah\/faq-about-cheetah\"}}"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"proxy"</span><span class="p">:</span><span class="s2">""</span><span class="p">,</span><span class="w">
         </span><span class="nt">"last_owner_update"</span><span class="p">:</span><span class="s2">"1970-01-01T00:00:00"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"last_account_update"</span><span class="p">:</span><span class="s2">"2017-06-13T00:14:00"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"created"</span><span class="p">:</span><span class="s2">"2016-07-17T08:47:18"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"mined"</span><span class="p">:</span><span class="kc">true</span><span class="p">,</span><span class="w">
         </span><span class="nt">"recovery_account"</span><span class="p">:</span><span class="s2">"steem"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"last_account_recovery"</span><span class="p">:</span><span class="s2">"1970-01-01T00:00:00"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"reset_account"</span><span class="p">:</span><span class="s2">"null"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"comment_count"</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="w">
         </span><span class="nt">"lifetime_vote_count"</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="w">
         </span><span class="nt">"post_count"</span><span class="p">:</span><span class="mi">517808</span><span class="p">,</span><span class="w">
         </span><span class="nt">"can_vote"</span><span class="p">:</span><span class="kc">true</span><span class="p">,</span><span class="w">
         </span><span class="nt">"voting_power"</span><span class="p">:</span><span class="mi">1249</span><span class="p">,</span><span class="w">
         </span><span class="nt">"last_vote_time"</span><span class="p">:</span><span class="s2">"2018-07-18T16:39:21"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"balance"</span><span class="p">:</span><span class="s2">"118.463 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"savings_balance"</span><span class="p">:</span><span class="s2">"0.000 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"sbd_balance"</span><span class="p">:</span><span class="s2">"67.717 SBD"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"sbd_seconds"</span><span class="p">:</span><span class="s2">"127094582318"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"sbd_seconds_last_update"</span><span class="p">:</span><span class="s2">"2018-07-18T14:13:15"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"sbd_last_interest_payment"</span><span class="p">:</span><span class="s2">"2018-06-20T12:01:15"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"savings_sbd_balance"</span><span class="p">:</span><span class="s2">"0.000 SBD"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"savings_sbd_seconds"</span><span class="p">:</span><span class="s2">"0"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"savings_sbd_seconds_last_update"</span><span class="p">:</span><span class="s2">"1970-01-01T00:00:00"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"savings_sbd_last_interest_payment"</span><span class="p">:</span><span class="s2">"1970-01-01T00:00:00"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"savings_withdraw_requests"</span><span class="p">:</span><span class="mi">0</span><span class="p">,</span><span class="w">
         </span><span class="nt">"reward_sbd_balance"</span><span class="p">:</span><span class="s2">"0.005 SBD"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"reward_steem_balance"</span><span class="p">:</span><span class="s2">"0.009 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"reward_vesting_balance"</span><span class="p">:</span><span class="s2">"26.366463 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"reward_vesting_steem"</span><span class="p">:</span><span class="s2">"0.013 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"vesting_shares"</span><span class="p">:</span><span class="s2">"4770940.577823 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"delegated_vesting_shares"</span><span class="p">:</span><span class="s2">"0.000000 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"received_vesting_shares"</span><span class="p">:</span><span class="s2">"16020356.484882 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"vesting_withdraw_rate"</span><span class="p">:</span><span class="s2">"347124.891306 VESTS"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"next_vesting_withdrawal"</span><span class="p">:</span><span class="s2">"2018-07-21T02:27:09"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"withdrawn"</span><span class="p">:</span><span class="s2">"1388499565224"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"to_withdraw"</span><span class="p">:</span><span class="s2">"4512623586985"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"withdraw_routes"</span><span class="p">:</span><span class="mi">1</span><span class="p">,</span><span class="w">
         </span><span class="nt">"curation_rewards"</span><span class="p">:</span><span class="mi">170083</span><span class="p">,</span><span class="w">
         </span><span class="nt">"posting_rewards"</span><span class="p">:</span><span class="mi">37433355</span><span class="p">,</span><span class="w">
         </span><span class="nt">"proxied_vsf_votes"</span><span class="p">:[</span><span class="s2">"50341599736964"</span><span class="p">,</span><span class="w"> </span><span class="s2">"20169963876698"</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">],</span><span class="w">
         </span><span class="nt">"witnesses_voted_for"</span><span class="p">:</span><span class="mi">23</span><span class="p">,</span><span class="w">
         </span><span class="nt">"last_post"</span><span class="p">:</span><span class="s2">"2018-07-18T16:39:24"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"last_root_post"</span><span class="p">:</span><span class="s2">"2018-07-18T07:00:45"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"average_bandwidth"</span><span class="p">:</span><span class="s2">"7525467544963"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"lifetime_bandwidth"</span><span class="p">:</span><span class="s2">"386011530000000"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"last_bandwidth_update"</span><span class="p">:</span><span class="s2">"2018-07-18T16:39:24"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"average_market_bandwidth"</span><span class="p">:</span><span class="mi">2406616155</span><span class="p">,</span><span class="w">
         </span><span class="nt">"lifetime_market_bandwidth"</span><span class="p">:</span><span class="s2">"224370000000"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"last_market_bandwidth_update"</span><span class="p">:</span><span class="s2">"2018-07-12T04:57:36"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"vesting_balance"</span><span class="p">:</span><span class="s2">"0.000 STEEM"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"reputation"</span><span class="p">:</span><span class="s2">"305786119478594"</span><span class="p">,</span><span class="w">
         </span><span class="nt">"transfer_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nt">"market_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nt">"post_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nt">"vote_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nt">"other_history"</span><span class="p">:[],</span><span class="w">
         </span><span class="nt">"witness_votes"</span><span class="p">:[</span><span class="w">
            </span><span class="s2">"anyx"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"arcange"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"ats-witness"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"ausbitbank"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"bitcoiner"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"blockchained"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"chitty"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"drakos"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"followbtcnews"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"fubar-bdhr"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"guiltyparties"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"liondani"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"lukestokes.mhth"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"neoxian"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"netuoso"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"noisy.witness"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"patrice"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"pfunk"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"pjau"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"teamsteem"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"thecryptodrive"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"themarkymark"</span><span class="p">,</span><span class="w">
            </span><span class="s2">"timcliff"</span><span class="w">
         </span><span class="p">],</span><span class="w">
         </span><span class="nt">"tags_usage"</span><span class="p">:[],</span><span class="w">
         </span><span class="nt">"guest_bloggers"</span><span class="p">:[]</span><span class="w">
      </span><span class="p">}</span><span class="w">
   </span><span class="p">],</span><span class="w">
   </span><span class="nt">"id"</span><span class="p">:</span><span class="mi">1</span><span class="w">
</span><span class="p">}</span><span class="w">
</span></code></pre>
</div>

<h3 id="calculate">Calculate</h3>

<p>Now, we can derive <code class="highlighter-rouge">bandwidth_allocated</code>:</p>

<p><code class="highlighter-rouge">bandwidth_allocated = max_virtual_bandwidth * (vesting_shares + received_vesting_shares) / total_vesting_shares</code></p>

<p><code class="highlighter-rouge">bandwidth_allocated = bandwidth_allocated / 1000000</code></p>

<p>In our example, <code class="highlighter-rouge">bandwidth_allocated = 14034118993</code>.</p>

<p>Now that we have both <code class="highlighter-rouge">bandwidth_allocated</code> and <code class="highlighter-rouge">average_bandwidth</code>, we can determine the percentages.</p>

<p>First, we need <code class="highlighter-rouge">average_bandwidth</code> on the same scale as <code class="highlighter-rouge">bandwidth_allocated</code>:</p>

<p><code class="highlighter-rouge">average_bandwidth = average_bandwidth / 1000000</code></p>

<p>Then we can get the percentages:</p>

<p><code class="highlighter-rouge">bandwidth_used = 100 * average_bandwidth / bandwidth_allocated</code></p>

<p><code class="highlighter-rouge">bandwidth_remaining = 100 - (100 * average_bandwidth / bandwidth_allocated)</code></p>

<p>We can see that <code class="highlighter-rouge">cheetah</code> has used <code class="highlighter-rouge">0.053 %</code> bandwidth and has <code class="highlighter-rouge">99.946 %</code> remaining as of <code class="highlighter-rouge">last_bandwidth_update</code>.</p>

</section>

</div>
<div class="footer">
	<a href="#">Back to top</a>
</div>
<script>
    document.getElementById("open-nav").addEventListener("click", function () {
        document.body.classList.toggle("nav-open");
    });
</script>
</body>
</html>


<script src="/js/adjust.js"></script>

